package com.linkgie.galaxyframework.security;

/**
 * 账号身份；
 * 
 * @author huanghaiquan
 *
 */
public interface AccountIdentity {

	/**
	 * 账户ID；
	 * 
	 * @return
	 */
	String getId();

	/**
	 * 账户的名称；
	 * 
	 * @return
	 */
	String getName();

	/**
	 * 公钥地址；
	 * <p>
	 * 公钥地址是根据公钥由“标准公钥地址生成器” { @Crypto#getStandardPublicKeyAddressGenerator }
	 * 生成的唯一值，具有与公钥唯一对应且长度更简短的特点；
	 * 
	 * @return
	 */
	String getPkAddress();

	/**
	 * 用户帐号的公钥；
	 * <p>
	 * 
	 * 公钥标识用户的唯一身份；如果帐号未绑定公钥，则返回 null；
	 * 
	 * @return
	 */
	String getPublicKey();

}